home *** CD-ROM | disk | FTP | other *** search
/ Aminet 31 / Aminet 31 (1999)(Schatztruhe)[!][Jun 1999].iso / Aminet / util / libs / IdentifyDev.lha / Identify / developer / include / Pascal / libraries / identify.h
Encoding:
Text File  |  1999-04-23  |  16.6 KB  |  364 lines

  1. ** $VER: identify.h 11.0 (23.04.99)
  2. ** 
  3. ** identify.library definitions 
  4. ** 
  5. ** (C) Copyright 1996-99 Richard Koerber
  6. ** All Rights Reserved. 
  7. }
  8.  
  9. {$if not def LIBRARIES_IDENTIFY_H} CONST LIBRARIES_IDENTIFY_H=1;
  10.  
  11.  
  12. {$if not def EXEC_LIBRARIES_H;incl 'exec/libraries.h';endif}
  13. {$if not def UTILITY_TAGITEM_H;incl 'utility/tagitem.h';endif}
  14.  
  15. CONST  _IDTAGS      = $CD450000;
  16.  
  17. { --------------------------------------------------------------------------}
  18. { Generic library informations }
  19.  
  20. CONST  IDENTIFYVERSION = 11;
  21.  
  22. TYPE   p_IdentifyBase = ^_IdentifyBase;
  23.        _IdentifyBase  = Record
  24.                           ifyb_LibNode  :_Library;
  25.                         End;
  26.  
  27. CONST  IDENTIFYBUFLEN = 50;  { default buffer length }
  28.  
  29. { --------------------------------------------------------------------------}
  30. { Expansion() tags }
  31.  
  32.        IDTAG_ConfigDev   = _IDTAGS+$00; { "p_ConfigDev" ConfigDev }
  33.                                         { structure to be evaluated }
  34.        IDTAG_ManufID     = _IDTAGS+$01; { UWORD manufacturer ID if no }
  35.                                         { ConfigDev is available }
  36.        IDTAG_ProdID      = _IDTAGS+$02; { UBYTE product ID if no }
  37.                                         { ConfigDev is available }
  38.        IDTAG_StrLength   = _IDTAGS+$03; { UWORD of maximum buffer length, }
  39.                                         { including termination. Default }
  40.                                         { is 50. }
  41.        IDTAG_ManufStr    = _IDTAGS+$04; { STRPTR of manufacturer name }
  42.                                         { puffer, or NULL }
  43.        IDTAG_ProdStr     = _IDTAGS+$05; { STRPTR of product name }
  44.                                         { puffer, or NULL }
  45.        IDTAG_ClassStr    = _IDTAGS+$06; { STRPTR of product class }
  46.                                         { puffer, or NULL }
  47.        IDTAG_DeadStr     = _IDTAGS+$07; { STRPTR deadend or recoverable alert? }
  48.        IDTAG_SubsysStr   = _IDTAGS+$08; { STRPTR alert subsystem }
  49.        IDTAG_GeneralStr  = _IDTAGS+$09; { STRPTR alert general cause }
  50.        IDTAG_SpecStr     = _IDTAGS+$0A; { STRPTR alert specific cause }
  51.        IDTAG_FuncNameStr = _IDTAGS+$0B; { STRPTR function name }
  52.        IDTAG_Expansion   = _IDTAGS+$0C; { "pp_ConfigDev" ConfigDev for a }
  53.                                         { complete expansion check. Init }
  54.                                         { the variable with NULL and pass }
  55.                                         { a pointer to it using this tag. }
  56.        IDTAG_Secondary   = _IDTAGS+$0D; { BOOL warn for secondary expansion }
  57.                                         { boards (defaults to FALSE) }
  58.        IDTAG_ClassID     = _IDTAGS+$0E; { ULONG * class ID of the provided }
  59.                                         { expansion board (see below) [V8] }
  60.        IDTAG_Localize    = _IDTAGS+$0F; { BOOL return localized strings }
  61.                                         { (defaults to TRUE) [V8] }
  62.        IDTAG_NULL4NA     = _IDTAGS+$10; { BOOL return NULL for not available, }
  63.                                         { else return a string (defaults to }
  64.                                         { FALSE) [V8] }
  65.  
  66. { --------------------------------------------------------------------------}
  67. { Hardware description types }
  68.  
  69.        IDHW_SYSTEM      = 0;   { System (Amiga,DraCo,...)            [V2] }
  70.        IDHW_CPU         = 1;   { CPU (68000,68010,...,68060) }
  71.        IDHW_FPU         = 2;   { FPU (---,68881,68882,68040,68060) }
  72.        IDHW_MMU         = 3;   { MMU (---,68852,68030,68040,68060) }
  73.        IDHW_OSVER       = 4;   { OS Version (Vx.x) }
  74.        IDHW_EXECVER     = 5;   { Exec Version (Vx.x) }
  75.        IDHW_WBVER       = 6;   { Workbench Version (---,Vx.x) }
  76.        IDHW_ROMSIZE     = 7;   { OS ROM Size (xKB, xMB) }
  77.        IDHW_CHIPSET     = 8;   { Chipset (OCS,ECS,AGA,DraCo) }
  78.        IDHW_GFXSYS      = 9;   { Graphic OS (AmigaOS, CyberGraphX, ...) }
  79.        IDHW_CHIPRAM     = 10;  { Chip RAM (xKB, xMB, xGB) }
  80.        IDHW_FASTRAM     = 11;  { Fast RAM (xKB, xMB, xGB) }
  81.        IDHW_RAM         = 12;  { Total RAM (xKB, xMB, xGB) }
  82.        IDHW_SETPATCHVER = 13;  { SetPatch Version (---,Vx.x)         [V4] }
  83.        IDHW_AUDIOSYS    = 14;  { Audio OS (AmigaOS, AHI, ...)        [V5] }
  84.        IDHW_OSNR        = 15;  { AmigaOS (2.04, 3.1, ...) }
  85.        IDHW_VMMCHIPRAM  = 16;  { VMM Chip RAM (*KB, *MB, *GB) }
  86.        IDHW_VMMFASTRAM  = 17;  { VMM Fast RAM (*KB, *MB, *GB) }
  87.        IDHW_VMMRAM      = 18;  { VMM Total RAM (*KB, *MB, *GB) }
  88.        IDHW_PLNCHIPRAM  = 19;  { Plain Chip RAM (*KB, *MB, *GB) }
  89.        IDHW_PLNFASTRAM  = 20;  { Plain Fast RAM (*KB, *MB, *GB) }
  90.        IDHW_PLNRAM      = 21;  { Plain Total RAM (*KB, *MB, *GB) }
  91.        IDHW_VBR         = 22;  { Vector Base Register                [V6] }
  92.        IDHW_LASTALERT   = 23;  { Last Alert code }
  93.        IDHW_VBLANKFREQ  = 24;  { VBlank Frequency }
  94.        IDHW_POWERFREQ   = 25;  { Power Frequency }
  95.        IDHW_ECLOCK      = 26;  { EClock }
  96.        IDHW_SLOWRAM     = 27;  { Plain Slow RAM (*KB, *MB, *GB) }
  97.        IDHW_GARY        = 28;  { Gary (---,Normal,...) }
  98.        IDHW_RAMSEY      = 29;  { RAMSEY (---,D,F)
  99.        IDHW_BATTCLOCK   = 30;  { Battery Backed Up Clock (---,Found) }
  100.        IDHW_CHUNKYPLANAR = 31; { Chunky To Planar Hardware (---,Found) [V7] }
  101.        IDHW_POWERPC     = 32;  { PowerPC present? (---,Found) }
  102.        IDHW_PPCCLOCK    = 33;  { PowerPC clock (unit MHz) }
  103.        IDHW_CPUREV      = 34;  { CPU revision                          [V8] }
  104.        IDHW_CPUCLOCK    = 35;  { CPU clock (unit MHz) }
  105.        IDHW_FPUCLOCK    = 36;  { FPU clock (unit MHz) }
  106.        IDHW_RAMACCESS   = 37;  { Main board RAM access time (unit ns) }
  107.        IDHW_RAMWIDTH    = 38;  { Main board RAM width (bit) }
  108.        IDHW_RAMCAS      = 39;  { Main board RAM CAS mode }
  109.        IDHW_RAMBANDWIDTH = 40; { Main board RAM bandwidth }
  110.        IDHW_TCPIP       = 41;  { TCP/IP stack                          [V9] }
  111.        IDHW_PPCOS       = 42;  { PowerPC OS }
  112.        IDHW_AGNUS       = 43;  { Agnus chip revision }
  113.        IDHW_AGNUSMODE   = 44;  { Agnus chip mode }
  114.        IDHW_DENISE      = 45;  { Denise chip version                   [V10] }
  115.        IDHW_DENISEREV   = 46;  { Denise chip revision }
  116.        IDHW_NUMBEROF    = 47;  { Number of types, PRIVATE! }
  117.  
  118. { --------------------------------------------------------------------------}
  119. { IDHW_SYSTEM numerical result codes }
  120.  
  121.        IDSYS_AMIGA1000  = 0;    { Amiga 1000 }
  122.        IDSYS_AMIGAOCS   = 1;    { OCS Amiga 500/2000 }
  123.        IDSYS_AMIGAECS   = 2;    { ECS Amiga 500/2000 }
  124.        IDSYS_AMIGA500   = 3;    { Amiga 500 }
  125.        IDSYS_AMIGA2000  = 4;    { Amiga 2000 }
  126.        IDSYS_AMIGA3000  = 5;    { Amiga 3000 }
  127.        IDSYS_CDTV       = 6;    { CDTV }
  128.        IDSYS_AMIGA600   = 7;    { Amiga 600 }
  129.        IDSYS_CD32       = 8;    { CD32 }
  130.        IDSYS_AMIGA1200  = 9;    { Amiga 1200 }
  131.        IDSYS_AMIGA4000  = 10;   { Amiga 4000 }
  132.        IDSYS_DRACO      = 11;   { DraCo }
  133.        IDSYS_UAE        = 12;   { Ubiquitous Amiga Emulator }
  134.        IDSYS_AMIGA4000T = 13;   { Amiga 4000 Tower }
  135.  
  136. { --------------------------------------------------------------------------}
  137. { IDHW_CPU numerical result codes }
  138.  
  139.        IDCPU_68000     = 0;     { 68000 }
  140.        IDCPU_68010     = 1;     { 68010 }
  141.        IDCPU_68020     = 2;     { 68020 }
  142.        IDCPU_68030     = 3;     { 68030 }
  143.        IDCPU_68EC030   = 4;     { 68EC030 (without MMU) }
  144.        IDCPU_68040     = 5;     { 68040 }
  145.        IDCPU_68LC040   = 6;     { 68LC040 (without FPU) }
  146.        IDCPU_68060     = 7;     { 68060 }
  147.        IDCPU_68LC060   = 8;     { 68LC060 (without FPU) }
  148.  
  149. { --------------------------------------------------------------------------}
  150. { IDHW_FPU numerical result codes }
  151.  
  152.        IDFPU_NONE      = 0;     { no FPU }
  153.        IDFPU_68881     = 1;     { 68881 }
  154.        IDFPU_68882     = 2;     { 68882 }
  155.        IDFPU_68040     = 3;     { 68040 }
  156.        IDFPU_68060     = 4;     { 68060 }
  157.  
  158. { --------------------------------------------------------------------------}
  159. { IDHW_MMU numerical result codes }
  160.  
  161.        IDMMU_NONE      = 0;     { no MMU }
  162.        IDMMU_68851     = 1;     { 68851 }
  163.        IDMMU_68030     = 2;     { 68030 }
  164.        IDMMU_68040     = 3;     { 68040 }
  165.        IDMMU_68060     = 4;     { 68060 }
  166.  
  167. { --------------------------------------------------------------------------}
  168. { IDHW_OSNR numerical result codes }
  169.  
  170.        IDOS_UNKNOWN    = 0;     { <V36 or >V40 }
  171.        IDOS_2_0        = 1;     { OS2.0  (V36) }
  172.        IDOS_2_04       = 2;     { OS2.04 (V37) }
  173.        IDOS_2_1        = 3;     { OS2.1  (V38) }
  174.        IDOS_3_0        = 4;     { OS3.0  (V39) }
  175.        IDOS_3_1        = 5;     { OS3.1  (V40) }
  176.  
  177. { --------------------------------------------------------------------------}
  178. { IDHW_CHIPSET numerical result codes }
  179.  
  180.        IDCS_OCS        = 0;     { OCS }
  181.        IDCS_ECS        = 1;     { ECS }
  182.        IDCS_AGA        = 2;     { AGA }
  183.        IDCS_ALTAIS     = 3;     { DraCo Altais }
  184.        IDCS_NECS       = 4;     { Nearly ECS (no HR-Agnus or HR-Denise) }
  185.  
  186. { --------------------------------------------------------------------------}
  187. { IDHW_GFXSYS numerical result codes }
  188.  
  189.        IDGOS_AMIGAOS   = 0;     { Plain AmigaOS }
  190.        IDGOS_EGS       = 1;     { EGS }
  191.        IDGOS_RETINA    = 2;     { Retina }
  192.        IDGOS_GRAFFITI  = 3;     { Graffiti }
  193.        IDGOS_TIGA      = 4;     { TIGA }
  194.        IDGOS_PROBENCH  = 5;     { Merlin ProBench }
  195.        IDGOS_PICASSO   = 6;     { Picasso }
  196.        IDGOS_CGX       = 7;     { CyberGraphX }
  197.        IDGOS_CGX3      = 8;     { CyberGraphX 3D }
  198.        IDGOS_PICASSO96 = 9;     { Picasso96 }
  199.        IDGOS_CGX4      = 10;    { CyberGraphX V4 }
  200.  
  201. { --------------------------------------------------------------------------}
  202. { IDHW_AUDIOSYS numerical result codes }
  203.  
  204.        IDAOS_AMIGAOS   = 0;     { Plain AmigaOS }
  205.        IDAOS_MAESTIX   = 1;     { MaestroPro driver }
  206.        IDAOS_TOCCATA   = 2;     { Toccata driver }
  207.        IDAOS_PRELUDE   = 3;     { Prelude driver }
  208.        IDAOS_AHI       = 4;     { AHI }
  209.        IDAOS_MACROAUDIO = 5;    { MacroAudio }
  210.  
  211. { --------------------------------------------------------------------------}
  212. { IDHW_GARY numerical result codes }
  213.  
  214.        IDGRY_NONE      = 0;     { No Gary available }
  215.        IDGRY_NORMAL    = 1;     { Normal Gary }
  216.        IDGRY_ENHANCED  = 2;     { Enhanced Gary }
  217.  
  218. { --------------------------------------------------------------------------}
  219. { IDHW_RAMSEY numerical result codes }
  220.  
  221.        IDRSY_NONE      = 0;     { No RamSey available }
  222.        IDRSY_REVD      = 1;     { RamSey Revision D }
  223.        IDRSY_REVF      = 2;     { RamSey Revision F }
  224.  
  225. { --------------------------------------------------------------------------}
  226. { IDHW_POWERPC numerical result codes }
  227.  
  228.        IDPPC_NONE      = 0;     {  No PowerPC implemented }
  229.        IDPPC_OTHER     = 1;     {  Another PowerPC }
  230.        IDPPC_602       = 2;     {  602 }
  231.        IDPPC_603       = 3;     {  603 }
  232.        IDPPC_603E      = 4;     {  603e }
  233.        IDPPC_603P      = 5;     {  603p }
  234.        IDPPC_604       = 6;     {  604 }
  235.        IDPPC_604E      = 7;     {  604e }
  236.        IDPPC_620       = 8;     {  620 }
  237.  
  238. { --------------------------------------------------------------------------}
  239. { IDHW_RAMCAS numerical result codes }
  240.  
  241.        IDCAS_NONE      = 0;     {  Not available }
  242.        IDCAS_NORMAL    = 1;     {  Normal access }
  243.        IDCAS_DOUBLE    = 2;     {  Double access }
  244.  
  245. { --------------------------------------------------------------------------}
  246. { IDHW_TCPIP numerical result codes }
  247.  
  248.        IDTCP_NONE      = 0;     {  Not available }
  249.        IDTCP_AMITCP    = 1;     {  AmiTCP }
  250.        IDTCP_MIAMI     = 2;     {  Miami }
  251.        IDTCP_TERMITE   = 3;     {  TermiteTCP }
  252.        IDTCP_GENESIS   = 4;     {  GENESiS }
  253.  
  254. { --------------------------------------------------------------------------}
  255. { IDHW_PPCOS numerical result codes }
  256.  
  257.        IDPOS_NONE      = 0;     {  None }
  258.        IDPOS_POWERUP   = 1;     {  PowerUP (Phase 5) }
  259.        IDPOS_WARPOS    = 2;     {  WarpOS (Haage&Partner) }
  260.  
  261. { --------------------------------------------------------------------------}
  262. { IDHW_AGNUS numerical result codes }
  263.  
  264.        IDAG_NONE       = 0;     {  None }
  265.        IDAG_UNKNOWN    = 1;     {  Unknown Agnus }
  266.        IDAG_8361       = 2;     {  Agnus 8361 }
  267.        IDAG_8367       = 3;     {  Agnus 8367 }
  268.        IDAG_8370       = 4;     {  Agnus 8370 }
  269.        IDAG_8371       = 5;     {  Agnus 8371 }
  270.        IDAG_8372_R4    = 6;     {  Agnus 8372 Rev. 1-4 }
  271.        IDAG_8372_R5    = 7;     {  Agnus 8372 Rev. 5 }
  272.        IDAG_8374_R2    = 8;     {  Alice 8374 Rev. 1-2 }
  273.        IDAG_8374_R3    = 9;     {  Alice 8374 Rev. 3-4 }
  274.  
  275. { --------------------------------------------------------------------------}
  276. { IDHW_DENISE numerical result codes }
  277.  
  278.        IDDN_NONE       = 0;     {  None }
  279.        IDDN_UNKNOWN    = 1;     {  Unknown Denise (new model?! :-) }
  280.        IDDN_8362       = 2;     {  Denise 8362 }
  281.        IDDN_8373       = 3;     {  Denise 8373 }
  282.        IDDN_8364       = 4;     {  Lisa 8364 }
  283.  
  284. { --------------------------------------------------------------------------}
  285. { IDHW_AGNUSMODE numerical result codes }
  286.  
  287.        IDAM_NONE       = 0;     {  None }
  288.        IDAM_NTSC       = 1;     {  NTSC Agnus }
  289.        IDAM_PAL        = 2;     {  PAL Agnus }
  290.  
  291. { --------------------------------------------------------------------------}
  292. { IDTAG_ClassID numerical result codes }
  293.  
  294.        IDCID_UNKNOWN     = 0;   {  unknown functionality }
  295.        IDCID_MISC        = 1;   {  miscellaneous expansion }
  296.        IDCID_TURBO       = 2;   {  accelerator }
  297.        IDCID_TURBORAM    = 3;   {  accelerator RAM }
  298.        IDCID_TURBOHD     = 4;   {  accelerator + some HD controller }
  299.        IDCID_TURBOIDE    = 5;   {  accelerator + AT-IDE controller }
  300.        IDCID_TURBOSCSIHD = 6;   {  accelerator + SCSI host adapter }
  301.        IDCID_NET         = 7;   {  some network }
  302.        IDCID_ARCNET      = 8;   {  ArcNet }
  303.        IDCID_ETHERNET    = 9;   {  Ethernet }
  304.        IDCID_AUDIO       = 10;  {  audio }
  305.        IDCID_VIDEO       = 11;  {  video (video digitizer etc) }
  306.        IDCID_MULTIMEDIA  = 12;  {  multimedia (audio, video, etc) }
  307.        IDCID_DSP         = 13;  {  multi purpose DSP }
  308.        IDCID_BUSBRIDGE   = 14;  {  ISA bus bridge }
  309.        IDCID_BRIDGE      = 15;  {  PC bridge }
  310.        IDCID_EMULATOR    = 16;  {  some Emulator hardware }
  311.        IDCID_MACEMU      = 17;  {  Macintosh emulator hardware }
  312.        IDCID_ATARIEMU    = 18;  {  Atari emulator hardware }
  313.        IDCID_GFX         = 19;  {  graphics (register) }
  314.        IDCID_GFXRAM      = 20;  {  graphics (video RAM) }
  315.        IDCID_HD          = 21;  {  some HD controller }
  316.        IDCID_HDRAM       = 22;  {  some HD controller + RAM }
  317.        IDCID_IDEHD       = 23;  {  IDE controller }
  318.        IDCID_IDEHDRAM    = 24;  {  IDE controller + RAM }
  319.        IDCID_SCSIHD      = 25;  {  SCSI host adapter }
  320.        IDCID_RAMSCSIHD   = 26;  {  SCSI host adapter + RAM }
  321.        IDCID_CDROM       = 27;  {  CD-ROM interface }
  322.        IDCID_MODEM       = 28;  {  internal modem }
  323.        IDCID_ISDN        = 29;  {  internal ISDN terminal adapter }
  324.        IDCID_MULTIIO     = 30;  {  multi I/O (serial + parallel) }
  325.        IDCID_SERIAL      = 31;  {  multi serial (no parallel) }
  326.        IDCID_PARALLEL    = 32;  {  multi parallel (no serial) }
  327.        IDCID_SCANIF      = 33;  {  scanner interface }
  328.        IDCID_TABLET      = 34;  {  drawing tablet interface }
  329.        IDCID_RAM         = 35;  {  plain RAM expansion }
  330.        IDCID_FLASHROM    = 36;  {  Flash ROM }
  331.        IDCID_SCSIIDE     = 37;  {  combined SCSI/IDE controller }
  332.        IDCID_RAMFPU      = 38;  {  RAM expansion + FPU }
  333.        IDCID_GUESS       = 39;  {  name was unknown but guessed }
  334.        IDCID_KICKSTART   = 40;  {  KickStart }
  335.        IDCID_RAM32       = 41;  {  32bit RAM expansion }
  336.        IDCID_TURBOANDRAM = 42;  {  accelerator + RAM expansion }
  337.        IDCID_ACCESS      = 43;  {  access control }
  338.        IDCID_INTERFACE   = 44;  {  some interface }
  339.        IDCID_MFMHD       = 45;  {  MFM HD controller }
  340.        IDCID_FLOPPY      = 46;  {  floppy disk controller }
  341.         { Be prepared to get other numbers as well. In this case you }
  342.         { should assume IDCID_MISC. }
  343.  
  344. { --------------------------------------------------------------------------}
  345. { Error codes }
  346.  
  347. { Positive error codes are DOS errors! }
  348.        IDERR_OKAY = 0;       { No error }
  349.        IDERR_NOLENGTH = -1;  { Buffer length is 0 ?? }
  350.        IDERR_BADID = -2;     { Missing or bad board ID }
  351.        IDERR_NOMEM = -3;     { Not enough memory }
  352.        IDERR_NOFD = -4;      { No fitting FD file found }
  353.        IDERR_OFFSET = -5;    { Function offset not found }
  354.        IDERR_DONE = -6;      { Done with traversing (not an error) }
  355.        IDERR_SECONDARY = -7; { Secondary expansion board (not an error) }
  356.  
  357. { --------------------------------------------------------------------------}
  358. { That's all... }
  359.  
  360. {$endif} 
  361.  
  362.  
  363.